Framework for Automated Code Smell Correction in a BrownVeld Context

نویسنده

  • Christian Baumann
چکیده

Developing code over a long period of time, in a heterogeneous team or under time pressure can lead to a lingering decay in readability, maintainability and thus reusability of software source code. In the past decades several approaches have been developed that tackle automatic detection of such code Waws, yet neglecting the automated correction as an essential and integrated step in the refactoring workWow. Developers rather had to refactor identiVed code Waws manually which is often a time-consuming and, consequently, cost-intensive task that doomed refactoring to be marginalized in production cycles. In this diploma thesis we argue that detection and correction of code Waws should be treated as inseparable tasks to annihilate parts of code that “do not feel right”. By reusing previous research conclusions made by the detection community and amalgamating it with recent achievements in the Veld of automated correction, we are able to present a holistic framework— Smeagol—that supports the continuous improvement of code. The contribution of this diploma thesis is as follows: First, we give an overview about the current state of the art in detection and correction and argumentatively deduce and discuss the need for a framework that assists developers in both steps, as both research Velds are investigated as separate topics up till now. Based on our argumentation, we will describe how a holistic framework can be designed and will describe our choices in detail by elaborating on the concrete implementation and techniques used for identifying and correcting code Waws. By giving workWow examples of how to extend our framework to detect and correct poor code, we show the practical usability and extendability of our tool. We Vnally compare our framework to competing approaches, point out diUerences and similarities and draw an overall conclusion of the presented work.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Multi-step Automated Refactoring for Code Smell

In computer programming, code smell may origin of latent problems in source code. Detecting and resolving bad smells remain time intense for software engineers despite proposals on bad smell detecting and refactoring tools. Numerous code smells have been recognized yet the sequence in which the detection and resolution of different kinds of code smells are performed because software engineers d...

متن کامل

Identifying Refactoring Opportunities Using Logic Meta Programming

In this paper, we show how automated support can be provided for identifying refactoring opportunities, e.g., when an application’s design should be refactored and which refactoring(s) in particular should be applied. Such support is achieved by using the technique of logic meta programming to detect so-called bad smells and by defining a framework that uses this information to propose adequate...

متن کامل

Automation of Refactoring and Refactoring Suggestions for TTCN-3 Test Suites. The TRex TTCN-3 Refactoring and Metrics Tool

Refactoring is not only useful for source code of implementations, but as well for test specifications. The open source TRex tool automates the application of refactorings and the detection of refactoring opportunities for test suites that are specified using the standardised Testing and Test Control Notation (TTCN-3). Depending on the refactoring, the behaviour preserving transformations may i...

متن کامل

Enabling Refactoring with HTN Planning to Improve the Design Smells Correction Activity

Refactorings are a key technique to software evolution. They can be used to improve the structure and quality of a software system. This paper introduces a proposal for generating refactoring plans with hierarchical task network planning, to improve the automation of the bad smells correction activity.

متن کامل

An Empirical Study of Bad Smell in Code on Maintenance Effort

In this paper, we represent an automated code smell detection and refactoring tool for calculating risk factor by detecting Code Smells and decrease risk factor by Refactoring Techniques. Refactoring is a process for restructuring or improving internal structure of software without changing its behavior. A new code smell (Lazy Catch) detection is also presented. To achieve this aim Declarative ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012